// 此文件的修改要重启应用
// npm i -D @craco/craco
const path = require('path')
// const fs = require('fs')
// // 自动导入mock下面的js文件
// // 定义一个对象用来标记哪些文件已被加载
// const loadFileMap = new Map()
// // 读取mock下面的js文件
// const mockDirPath = path.resolve('./mock')
// const files = fs.readdirSync(mockDirPath)
// files.forEach((file) => {
//   if (!loadFileMap.has(file)) {
//     const filePath = path.join(mockDirPath, file)
//     loadFileMap.set(file, require(filePath))
//   }
// })

module.exports = {
  webpack: {
    alias: {
      // 定义路径别名
      '@': path.resolve('./src')
    }
  },
  babel: {
    plugins: []
  },
  // style: {
  //   postcss: {
  //     loaderOptions: {
  //       postcssOptions: {
  //         ident: 'postcss',
  //         plugins: [
  //           [
  //             // npm i -D postcss-pxtorem@6
  //             'postcss-pxtorem',
  //             {
  //               rootValue: 37.5, // 根元素字体大小
  //               // 转换所以写在class外联样式中的px单位，如查是内联style则px不会转换
  //               // Px或PX单位它不会转换
  //               propList: ['*'],
  //               // 精度
  //               unitPrecision: 6,
  //               exclude: /node_modules/i
  //             }
  //           ]
  //         ]
  //       }
  //     }
  //   }
  // },
  // 开发服务器配置 - 详细配置请查看webpack中的devServer配置
  devServer: {
    // port: 8080,
    // open: false,
    setupMiddlewares: (middlewares, { app }) => {
      // loadFileMap.forEach((fn) => fn(app))
      return middlewares
    },
    // 代理配置
    proxy: {
      '/api': {
        target: 'https://api.iynn.cn/film',
        changeOrigin: true,
        // pathRewrite: { '^/api': '' }
      }
    }
  }
}
